/**  
* @Title: TreeNodeUtil.java 
* @Description:
* @Copyright: Copyright (c) 2018
* @Company:http://www.sinocon.cn
* @author Administrator  
* @date 2018年4月19日  
* @version 1.0  
*/
package com.sansui.admin.common.util;

import java.util.ArrayList;
import java.util.List;

import com.sansui.admin.common.model.JsonTreeData;

/**
 * @Title: TreeNodeUtil
 * @Description:
 * @author:Administrator
 * @date 2018年4月19日
 */
public class TreeNodeUtil {
	public final static List<JsonTreeData> getfatherNode(List<JsonTreeData> treeDataList) {
		List<JsonTreeData> newTreeDataList = new ArrayList<JsonTreeData>();
		for (JsonTreeData jsonTreeData : treeDataList) {
			if (jsonTreeData.getPid().equals("0")) {
				// 获取父节点下的子节点
				jsonTreeData.setChildren(getChildrenNode(jsonTreeData.getId(), treeDataList));
				jsonTreeData.setState("open");
				newTreeDataList.add(jsonTreeData);
			}
		}
		return newTreeDataList;
	}

	private final static List<JsonTreeData> getChildrenNode(String pid, List<JsonTreeData> treeDataList) {
		List<JsonTreeData> newTreeDataList = new ArrayList<JsonTreeData>();
		for (JsonTreeData jsonTreeData : treeDataList) {
			if (jsonTreeData.getPid() == null)
				continue;
			// 这是一个子节点
			if (jsonTreeData.getPid().equals(pid)) {
				// 递归获取子节点下的子节点
				jsonTreeData.setChildren(getChildrenNode(jsonTreeData.getId(), treeDataList));
				newTreeDataList.add(jsonTreeData);
			}
		}
		return newTreeDataList;
	}
}
